package com.gpframework.module.order.domain.req;

import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.NoArgsConstructor;
import lombok.ToString;
import lombok.experimental.Accessors;

import java.util.List;

/**
 * @ClassName GpFlowConfigAdd
 * @Author gpframework
 * @Date 2023-06-16
 * @Version 1.0.0
 * @Description 流转节点配置Add对象
 */
@Data
@ToString
@EqualsAndHashCode
@NoArgsConstructor
@Accessors(chain = true)
public class GpFlowConfigAdd {
    private static final long serialVersionUID = 1L;

    /** 品牌id */
    @ApiModelProperty("品牌id")
    private String brandId;

    /** 品牌名称 */
    @ApiModelProperty("品牌名称")
    private String brandName;

    /** 流转节点名称 */
    @ApiModelProperty("流转节点名称")
    private String name;

    /** 散剪绿色处理时长（最小值） */
    @ApiModelProperty("散剪绿色处理时长（最小值）")
    private Long greenMinDuration;

    /** 散剪绿色处理时长（最大值） */
    @ApiModelProperty("散剪绿色处理时长（最大值）")
    private Long greenMaxDuration;

    /** 散剪黄色处理时长（最小值） */
    @ApiModelProperty("散剪黄色处理时长（最小值）")
    private Long yellowMinDuration;

    /** 散剪黄色处理时长（最大值） */
    @ApiModelProperty("散剪黄色处理时长（最大值）")
    private Long yellowMaxDuration;

    /** 散剪红色处理时长 */
    @ApiModelProperty("散剪红色处理时长")
    private Long redDuration;

    @ApiModelProperty("大货绿色处理时长（最小值）")
    private Long bigGreenMinDuration;

    @ApiModelProperty("大货绿色处理时长（最大值）")
    private Long bigGreenMaxDuration;

    @ApiModelProperty("大货黄色处理时长（最小值）")
    private Long bigYellowMinDuration;

    @ApiModelProperty("大货黄色处理时长（最大值）")
    private Long bigYellowMaxDuration;

    @ApiModelProperty("大货红色处理时长")
    private Long bigRedDuration;

    @ApiModelProperty("距离超期X分钟大屏显示")
    private Long largeScreenOverdue;

    /** 排序 */
    @ApiModelProperty("排序")
    private Integer sort;

    /** 备注 */
    @ApiModelProperty("备注")
    private String remarks;

    /** 配置角色关联列表 */
    @ApiModelProperty("配置角色关联列表")
    private List<GpFlowConfigRoleRelaAdd> flowConfigRoleRelaList;

    /** 角色ids */
    @ApiModelProperty("角色ids")
    private List<Long> roleIds;

}
